home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 6 / Sonderheft_6-96.iso / pd / basteln & infos / in-out-board / maxon_bas_sources / lcd.bas next >
BASIC Source File  |  1996-11-03  |  4KB  |  142 lines

  1. '***************************************************************************
  2. '*                                                                         *
  3. '*                                LCD.bas                                  *
  4. '*                                                                         *
  5. '*                       © 1996 Andreas Heinrich                           *
  6. '*                                                                         *
  7. '*             Dieses Programm steuert ein LCD-Display an und              *
  8. '*          gibt die ASCII-Codes von 0-255 an das Display weiter.          *
  9. '*                                                                         *
  10. '***************************************************************************
  11. '  A=Adresse
  12. '  N=Wert
  13. '  U=1 = Neue Zeile
  14. '  T=Positionszähler
  15. '  U-Prog. Daten = Datenwort wird über Port 3 an das LCD-Display geschickt
  16. '  U-Prog. Kommando = Steuerwort wird gesendet
  17. '
  18. '
  19. '**************************** Init für In_Out_Board ************************
  20. '
  21. GOSUB INIT
  22. '
  23. '********************** Init Kommandos für LCD - Display *******************
  24. '
  25. N=h38 : REM             Display initialisieren
  26. GOSUB KOMMANDO
  27. N=h1 : REM              Anzeige löschen
  28. GOSUB KOMMANDO
  29. t1=TIMER
  30. WHILE TIMER<=t1+.02 
  31. WEND : REM              Muß hier 1/50 Sekunde warten
  32. '
  33. N=hE : REM              Schreibmarke einschalten
  34. GOSUB KOMMANDO
  35. N=h6 : REM              Cursor an
  36. GOSUB KOMMANDO
  37. '
  38. '**************************** Demo für die Ausgabe **************************
  39. '
  40. '      ( Ab hier können dann eigene Programme eingefügt werden.)
  41. '
  42. '          Gibt die Werte von 0 bis 255 auf die Anzeige
  43. '          Nicht jedem Wert ist auch ein Zeichen zugeordnet
  44. NOCH_EINMAL:
  45. T=1
  46. FOR B=0 TO 255
  47. LOCATE 2,1 : PRINT B, : PRINT CHR$(B) 
  48.  N=B
  49.   GOSUB DATEN
  50. t1=TIMER
  51. WHILE TIMER<=t1+.20
  52. WEND : REM   Hier ist kleine Warteschleife, damit man den Cursor sieht.
  53. T=T+1
  54. '*************** Diese Routine löscht nach 1 Sekunde das Display ************
  55. '
  56.  If T=17
  57.    U=1
  58.     N=hC0
  59.   GOSUB KOMMANDO
  60. END IF
  61. '
  62. IF T=33 AND U=1
  63.   U=0
  64.     T=1
  65.       t1=TIMER
  66.       WHILE TIMER<=t1+1
  67.       WEND       
  68.      N=1
  69.    GOSUB KOMMANDO
  70. END IF
  71. '
  72. '****************************************************************************
  73. '
  74. NEXT B
  75. '
  76. '********************************* Ende *************************************
  77. '
  78. PRINT
  79. PRINT "Ende"
  80. END
  81. '
  82. '******************************* Unterprogramme *****************************
  83. '
  84. SCHREIBEN:
  85. '
  86. POKE 12570624&,248+A : REM  Adresse A selektieren
  87. POKE 12575489&,255 : REM    Port als Ausgang schalten
  88. POKE 12574977&,N : REM      Wert N schreiben
  89. POKE 12570624&,255 : REM    Ready LED einschalten
  90. '
  91. RETURN
  92. '
  93. INIT:
  94. '
  95. '******************** Nach dem Einschalten aufrufen ***********************
  96. '
  97. POKE 12571136&,199 : REM    Busy,P-aus und SEL=Bitmuster Ausgabe
  98. POKE 12570624&,255 : REM    Adresse 7 selektieren (Ready LED ein)
  99. POKE 12575489&,0 : REM      Port als Eingang schalten
  100. '
  101. '**************************************************************************
  102. RETURN
  103. '
  104. KOMMANDO:
  105. '
  106. A=3 : REM Steuerwort an Port 3 senden
  107. GOSUB SCHREIBEN
  108. '
  109. '******************** Umschalten nach Steuerwort **************************
  110. '                          LCD-Freigabe usw.
  111. A=4
  112. N=3
  113. GOSUB SCHREIBEN
  114. '
  115. N=1
  116. GOSUB SCHREIBEN
  117. '
  118. N=2
  119. GOSUB SCHREIBEN
  120. '
  121. N=3
  122. GOSUB SCHREIBEN
  123. '
  124. '**************************************************************************
  125. RETURN
  126. '
  127. DATEN:
  128. A=3 : REM Datenwort nach Port 3
  129. GOSUB SCHREIBEN
  130. '
  131. '*************************** LCD-Freigabe ********************************
  132. '
  133. A=4
  134. N=2
  135. GOSUB SCHREIBEN
  136. '
  137. N=3
  138. GOSUB SCHREIBEN
  139. '*************************************************************************
  140. RETURN
  141. '
  142.